package com.dylan.springcloud.ribbonloadbalancer.config;

import com.netflix.client.IClient;
import com.netflix.client.config.IClientConfig;
import com.netflix.loadbalancer.IRule;
import com.netflix.loadbalancer.RandomRule;
import com.netflix.loadbalancer.RoundRobinRule;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * Created by Dylan on 2018/10/15.
 *
 *  全局负载均衡策略设置
 *
 *  注意：不能这么设置，多服务时会报404。所有服务都是用同一个RoundRobinRule实例，其中的ILoadBalancer属性
 *  只能存储一个服务的实例（每个服务都对应一个ILoadBalancer实例，来存储他们的服务列表）,会出现服务B的服务列表
 *  覆盖服务A的服务列表，导致访问404
 */
//@Configuration
public class LoadBalancerConfig {

    @Bean
    public IRule ribbonRule() {
        return new RandomRule();
//        return new RoundRobinRule();
    }
}
